<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <div id="app"></div>

    <script src="./src/react.js"></script>
    <script src="./src/react-dom.js"></script>
    <script src="./src/babel.js"></script>

    <script type="text/babel">
     // 受控组件：表单的 【初始值-值的变化】 都是由 state 控制 

     class Biaodan extends React.Component{
        constructor(){
            super();
            this.state={
                user:"admin",
                password:"123456",
                all:true
            }
        }
        /*
        changeUser=(event)=>{
            this.setState({
                user:event.target.value
            })
        }

        changePassword=(event)=>{
            this.setState({
                password:event.target.value
            }) 
        }*/

        changeInput=(event)=>{
           
            const value =  event.target.type == 'checkbox' ?event.target.checked :event.target.value
            this.setState({
                [event.target.name]:value
            }) 
        }
        add=()=>{
            // console.log(this.state)
        }

        render(){
            let {user,password,all} = this.state;
            return (
            <div>   
                <input type="text"  value={user}  name="user" onChange={(e)=>this.changeInput(e)}/> 
                <input type="text"  value={password} name="password" onChange={this.changeInput}/> 
                <input type="checkbox"  checked={all}  name="all" onChange={this.changeInput}/> 
                <input type="button" value="提交"  onClick={this.add}/>
            </div>
            )
        }
     }




        ReactDOM.render(
            <div>
                <Biaodan></Biaodan>
            </div>,
            document.getElementById("app")
        )
        
    </script>

</body>
</html>